package in.lib.adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import java.util.Collection;
import java.util.List;
import in.model.SimpleUser;
import in.rob.client.R;
import in.view.holder.AccountHolder;
import lombok.Getter;
import lombok.NonNull;
public class AccountAdapter extends BaseAdapter
{
@Getter private final Context context;
@Getter private final List<? extends SimpleUser> items;
public AccountAdapter(Context context, @NonNull List<? extends SimpleUser> items)
{
this.context = context;
this.items = items;
}
public void setItems(Collection users)
{
this.items.clear();
this.items.addAll(users);
}
@Override public int getCount()
{
return items.size();
}
@Override public SimpleUser getItem(int position)
{
return items.get(position);
}
@Override public long getItemId(int position)
{
return items.get(position).hashCode();
}
@Override public View getView(int position, View convertView, ViewGroup parent)
{
AccountHolder holder;
SimpleUser item = getItem(position);
if (convertView == null)
{
convertView = LayoutInflater.from(getContext()).inflate(R.layout.popup_user_view, parent, false);
holder = new AccountHolder(convertView);
convertView.setTag(holder);
}
else
{
holder = (AccountHolder)convertView.getTag();
}
holder.populate(item);
convertView.setTag(R.id.TAG_POSITION, position);
return convertView;
}
}